PROJ = lsq
SOURCE := ./src/$(PROJ).c
GENDATA := $(PROJ)_data
DATA = testdata.txt
IMAGE = output.eps
REF = references.bib
GP = lsq.gp

all: $(PROJ) $(GENDATA) $(DATA) $(PROJ).pdf
exe: $(PROJ)
doc: $(PROJ) $(PROJ).pdf

$(PROJ): $(SOURCE)
	gcc -o $@ $<

$(GENDATA): ./src/$(GENDATA).c
	gcc -o $@ $<

$(DATA): $(GENDATA)
	./$(GENDATA)
	./$(PROJ)

$(GP): $(DATA)
	echo "set terminal eps" > lsq.gp
	echo "set output 'output.eps'" >> lsq.gp
	# 添加绘图命令
	echo "plot 'output.dat' using 1:2 title 'Data Points'" >> lsq.gp
	echo "unset output" >> lsq.gp

$(IMAGE): $(GP)
	gnuplot $(PROJ).gp

$(PROJ).pdf: ./doc/$(PROJ).tex $(IMAGE) ./doc/$(REF)
	xelatex $<
	bibtex lsq.aux
	xelatex $<
	xelatex $<
	mv lsq.pdf ./doc/
doc: clean-doc
.PHONY: clean-doc
clean-doc:
	rm -rf *.aux *.bbl *.blg *.log *.out *.pdf *.toc \
	$(PROJ) $(GENDATA) $(DATA) $(IMAGE) \
	*.nav *.snm *.dat *.gp ./doc/auto

clean:
	rm -rf *.aux *.bbl *.blg *.log *.out *.pdf *.toc \
	$(PROJ) $(GENDATA) $(DATA) $(IMAGE) \
	*.nav *.snm *.dat *.gp ./doc/auto ./doc/*.pdf

.PHONY: all clean





